const paymentService = require('../services/paymentService')

class paymentController {
  // 统一下单
  async unifiedOrder(ctx, next) {
    try {
      const res = await paymentService.unifiedOrder(
        {
          appid: 'wxd678efh567hg6787', // 微信公众号或小程序的AppID
          mch_id: '1230000109', // 商户号
          nonce_str: '5K8264ILTKCH16CQ2502SI8ZNMTM67VS', // 随机字符串，确保每次请求都不同
          sign_type: 'MD5', // 签名类型，通常为MD5
          sign: 'C380BEC2BFD727A4B6845133519F3AD6', // 根据支付接口规则计算得到的签名
          body: 'Order_Description', // 订单描述
          out_trade_no: '45446464478878784', // 商户系统内部的订单号，确保唯一性
          total_fee: '0.01', // 订单总金额，单位为分
          spbill_create_ip: '116.252.134.104', // 发起支付请求的客户端IP地址
          notify_url: 'https://www.weixin.qq.com/wxpay/pay.php', // 支付结果通知地址，接收支付成功通知的URL
          trade_type: 'JSAPI', // 交易类型，如 JSAPI、NATIVE、APP 等
          openid: 'o4xmI6FQdaN-ZBMOItGwqjlU20QY', // 用户在商户 appid 下的唯一标识（仅在 JSAPI 支付时需要）
          // 其他可选参数，根据具体接口需求添加
        }
      )
      ctx.status = 200
      ctx.body = { res }
    } catch(error) {
      ctx.status = 500;
      ctx.body = { message: '创建订单失败~', error: error.message };
    }
    await next()
  }

  // 统一下单v3
  async unifiedOrderV3(ctx, next) {
     try {

     } catch (error) {
      ctx.status = 500;
      ctx.body = { message: '创建订单失败~', error: error.message };
    }
    await next()
  }
}

module.exports = new paymentController()